#!/usr/bin/env python3
"""
TAPD 季度总结系统 - 快速演示
"""

import asyncio
import os
import sys
from datetime import datetime
from dotenv import load_dotenv
from autogen_agentchat.agents import AssistantAgent
from autogen_agentchat.teams import RoundRobinGroupChat

# 添加项目路径
sys.path.append(os.path.dirname(os.path.abspath(__file__)))

from src.utils.model_client import create_deepseek_client


async def demo():
    """演示程序"""
    print("🚀 TAPD 季度总结系统演示")
    print("=" * 40)

    # 加载环境变量
    load_dotenv()

    # 检查必要的环境变量
    deepseek_api_key = os.getenv("DEEPSEEK_API_KEY")
    if not deepseek_api_key:
        print("❌ 请设置 DEEPSEEK_API_KEY 环境变量")
        print("示例: export DEEPSEEK_API_KEY='your_api_key_here'")
        return

    try:
        # 初始化模型客户端
        model_client = create_deepseek_client(
            api_key=deepseek_api_key,
            base_url=os.getenv("DEEPSEEK_BASE_URL", "https://api.deepseek.com")
        )

        print("✅ 模型客户端初始化成功")

        # 创建简单的演示智能体
        demo_agent = AssistantAgent(
            name="演示智能体",
            model_client=model_client,
            system_message="你是一个友好的助手，帮助用户了解 TAPD 季度总结系统。请简要介绍这个系统的功能。"
        )

        # 创建单智能体团队
        team = RoundRobinGroupChat([demo_agent])

        # 执行演示任务
        print("\n🤖 正在执行演示任务...")
        result = await team.run(task="请介绍 TAPD 季度总结自动生成系统的主要功能和工作流程")

        print("\n📋 演示结果:")
        print("-" * 30)
        for message in result.messages:
            print(f"\n{message.source}: {message.content}")

        print("\n✅ 演示完成！系统工作正常。")

    except Exception as e:
        print(f"❌ 演示执行失败: {str(e)}")
        import traceback
        traceback.print_exc()


if __name__ == "__main__":
    asyncio.run(demo())